package main

import "fmt"

/*
1、步骤
(1)声明/定义结构体，确定结构体名
(2)编写结构体的字段
(3)编写结构体的方法
2、学生案例
(1)编写一个Student结构体，包含name、gender、age、id、score字段，分别为string、string、int、int、float64类型
(2)结构体中声明一个say方法，返回string类型，方法返回信息中包含所有字段值
(3)在main方法中，创建Student结构体实例(变量)，并返回say方法，并将调用结构体打印输出
*/
type Student struct {
	name   string
	gender string
	age    int
	id     int
	score  float64
}

func (student *Student) say() string {
	infoStr := fmt.Sprintf("student的信息name[%v] gender=[%v], age=[%v] id=[%v] score=[%v]",
		student.name, student.gender, student.age, student.id, student.score)
	return infoStr
}
func main() {
	var stu = Student{
		name:   "tom",
		gender: "male",
		age:    10,
		id:     1000,
		score:  99.98,
	}
	str := stu.say()
	fmt.Println("str=", str)
}
